package cn.cosmosx.base.generator.excel.param;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

/**
 * 生成实体类的相关属性
 */
@Getter
@Setter
@ApiModel(description = "Excel生成Java Bean-Param")
public class EntityModelParam {

    @ApiModelProperty(value = "实体包路径", notes = "指定生成实体类的包名", example = "cn.cosmosx.entity")
    private String packageName;

    @ApiModelProperty(value = "实体名称", notes = "指定生成实体类的名称", example = "User")
    private String entityName;

    @ApiModelProperty(value = "实体描述", notes = "实体描述", example = "User实例类")
    private String entityDesc;

    @ApiModelProperty(value = "实体描述",
            notes = "指定实体映射的数据库表名称。注意：该属性的优先级高于entityName。当指定了tableName，表名就是tableName的属性值。当该属性值为空时，表名默认为entityName的值，下划线分隔全小写",
            example = "User实例类")
    private String tableName;

    @ApiModelProperty(value = "指定实体映射的数据库表的前缀", notes = "如果不指定，则没有表名前缀", example = "")
    private String tablePrefix;

    @ApiModelProperty(value = "Excel数据页签", notes = "下标从0开始", example = "0")
    private int sheetNo;

    @ApiModelProperty(value = "标题行数", notes = "依次1,2,3...", example = "1")
    private int headNums;

    @ApiModelProperty(value = "标题行数", notes = "下标从0开始", example = "10")
    private int endColumnIndex;
}
